AndroidでTesseractを使用する その1 ビルド編

Tesseractという、OCRエンジンがあります。また、それをAndroidで使用するための、tesseract-android-tools、そして、更にそれをfolkしたtess-twoと呼ばれるものがあります。この、tess-twoを使ってみることにします。

今回はtess-twoをビルドするところまで紹介いたします。

SDKとNDKの取得

この2つがないと、何も始まりません…。

SDKの入手

Get the Android SDKから、SDKを入手します。今回は、実験環境が64bit版Linuxでしたので、Linux 64-bitをダウンロードします。また、展開して、パスを通しておくと後々便利です。

NDKの入手

Android NDKからプラットフォームに合ったNDKを取得します。解凍して、パスを通しておきましょう。

tess-twoの入手

基本的には、README.mdに書かれていることに従えば大丈夫です。

まず、tess-twoはGitHubで公開されていますのでcloneします。

さらに、これをビルドします。

このビルドは非常に時間がかかります。ビルドが完了すると、libsディレクトリに*.soファイルが生成されます。

classes.jarの作成

次のコマンドを実行して、tess-twoをjarファイルとしてエクスポートします。このjarファイルは、soファイルへアクセスするために手助けをしてくれるものだと考えるといいかと思います。

ただし、64bit版Linuxの環境では、Android SDKに含まれるaaptが動きません。ですので、AndroidアプリをAndroidを使って作るのページを参考に、必要なライブラリをインストールします。

これで、ant releaseが動くはずです。ant完了後、binディレクトリの下に、classes.jarが生成されます。

今日はとりあえずここまで…。